package com.tsd.system.entity;


import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * 系统用户
 *
 * @author Hillpool
 * @date 2022/09/26 16:49:19
 */
@ApiModel(description = "系统用户")
public class SysUser implements Serializable {

    @ApiModelProperty(value = "主键，uuid", example = "1")
    private Long id;

    @ApiModelProperty(value = "编程代码设置的uuid", example = "1")
    private String sid;

    @ApiModelProperty(value = "创建时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date create_date;

    @ApiModelProperty(value = "创建人sid", example = "1")
    private String creator_sid;

    @ApiModelProperty(value = "创建人名称", example = "1")
    private String creator_name;

    @ApiModelProperty(value = "更新时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date update_date;

    @ApiModelProperty(value = "更新人sid", example = "1")
    private String updator_sid;

    @ApiModelProperty(value = "更新人名称", example = "1")
    private String updator_name;

    @ApiModelProperty(value = "上级id", example = "1")
    private String parent_sid;

    @ApiModelProperty(value = "本级编码，工号", example = "1")
    private String code;

    @ApiModelProperty(value = "完整编码，点号分隔形成多级编码", example = "1")
    private String full_code;

    @ApiModelProperty(value = "姓名", example = "1")
    private String name;

    @ApiModelProperty(value = "排序", example = "1")
    private Integer sn;

    @ApiModelProperty(value = "状态，现场人员就是有效人员，离职为dr=1，现场人员：dr=0 & state=1，冻结dr=0&state=0", example = "1")
    private Integer state;

    @ApiModelProperty(value = "删除标志，0-未删除，1-已删除", example = "1")
    private Integer dr;

    @ApiModelProperty(value = "删除时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date dr_date;

    @ApiModelProperty(value = "删除人员sid", example = "1")
    private String dr_user_sid;

    @ApiModelProperty(value = "删除人名称", example = "1")
    private String dr_user_name;

    @ApiModelProperty(value = "备注", example = "1")
    private String note_info;

    @ApiModelProperty(value = "年份", example = "1")
    private Integer yyyy;

    @ApiModelProperty(value = "月份", example = "1")
    private Integer mm;

    @ApiModelProperty(value = "日期", example = "1")
    private Integer dd;

    @ApiModelProperty(value = "旬，1-上旬，2-中旬，3-下旬", example = "1")
    private Integer ten_days;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext0;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext1;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext2;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext3;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext4;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext5;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext6;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext7;

    @ApiModelProperty(value = "扩展预留字段", example = "1")
    private String ext8;

    @ApiModelProperty(value = "登录账号", example = "1")
    private String login_id;

    @ApiModelProperty(value = "密码，md5加密", example = "1")
    private String password;

    @ApiModelProperty(value = "手机号码", example = "1")
    private String mobile;

    @ApiModelProperty(value = "固定电话", example = "1")
    private String phone;

    @ApiModelProperty(value = "邮箱", example = "1")
    private String email;

    @ApiModelProperty(value = "直接主分组id", example = "1")
    private String group_sid;

    @ApiModelProperty(value = "用户类型，未指定，由各业务系统设置", example = "1")
    private String user_type;

    @ApiModelProperty(value = "性别,0-未知，1-男，2-女", example = "1")
    private Integer sex;

    @ApiModelProperty(value = "身份证", example = "1")
    private String id_card_no;

    @ApiModelProperty(value = "是否需要修改密码", example = "1")
    private String must_change_pwd;

    @ApiModelProperty(value = "上次修改密码时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date changed_pwd_date;

    @ApiModelProperty(value = "被锁的时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date locked_date;

    @ApiModelProperty(value = "上次登录时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date last_logined_date;

    @ApiModelProperty(value = "最后登出时间", example = "1")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    private Date logout_date;

    @ApiModelProperty(value = "登录次数", example = "1")
    private Integer login_count;

    @ApiModelProperty(value = "部门sid，sys_group的sid", example = "1")
    private String dept_sid;

    @ApiModelProperty(value = "职务sid，sys_group_duty的sid", example = "1")
    private String duty_sid;

    @ApiModelProperty(value = "头像url", example = "1")
    private String head_pic;

    @ApiModelProperty(value = "签名url", example = "1")
    private String sign_url;

    @ApiModelProperty(value = "印章url", example = "1")
    private String seal_url;

    @ApiModelProperty(value = "身份证正面url", example = "1")
    private String id_card_url;

    @ApiModelProperty(value = "身份证反面url", example = "1")
    private String id_card2_url;

    @ApiModelProperty(value = "职称证url", example = "1")
    private String professional_url;

    @ApiModelProperty(value = "毕业证url", example = "1")
    private String diploma_url;

    @ApiModelProperty(value = "资格证url", example = "1")
    private String qualification_url;

    @ApiModelProperty(value = "真实姓名", example = "1")
    private String real_name;

    @ApiModelProperty(value = "出生日期", example = "1")
    private String birth_day;

    @ApiModelProperty(value = "民族", example = "1")
    private String nationality;

    @ApiModelProperty(value = "地址", example = "1")
    private String address;

    @ApiModelProperty(value = "绑定的设备id", example = "1")
    private String device_id;

    @ApiModelProperty(value = "是否查看客户全部数据，0-否，1-是", example = "1")
    private Integer is_all_client;

    @ApiModelProperty(value = "客户授权模式：none-不控制、creator-录入者、group-部门、setting-授权设置", example = "1")
    private String client_auth_mode;

    @ApiModelProperty(value = "客户授权设置：client-按客户、type-按客户分组", example = "1")
    private String client_auth_setting;

    public Long getId() {
        return this.id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getSid() {
        return this.sid;
    }

    public void setSid(String sid) {
        this.sid = sid;
    }

    public Date getCreate_date() {
        return this.create_date;
    }

    public void setCreate_date(Date create_date) {
        this.create_date = create_date;
    }

    public String getCreator_sid() {
        return this.creator_sid;
    }

    public void setCreator_sid(String creator_sid) {
        this.creator_sid = creator_sid;
    }

    public String getCreator_name() {
        return this.creator_name;
    }

    public void setCreator_name(String creator_name) {
        this.creator_name = creator_name;
    }

    public Date getUpdate_date() {
        return this.update_date;
    }

    public void setUpdate_date(Date update_date) {
        this.update_date = update_date;
    }

    public String getUpdator_sid() {
        return this.updator_sid;
    }

    public void setUpdator_sid(String updator_sid) {
        this.updator_sid = updator_sid;
    }

    public String getUpdator_name() {
        return this.updator_name;
    }

    public void setUpdator_name(String updator_name) {
        this.updator_name = updator_name;
    }

    public String getParent_sid() {
        return this.parent_sid;
    }

    public void setParent_sid(String parent_sid) {
        this.parent_sid = parent_sid;
    }

    public String getCode() {
        return this.code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getFull_code() {
        return this.full_code;
    }

    public void setFull_code(String full_code) {
        this.full_code = full_code;
    }

    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getSn() {
        return this.sn;
    }

    public void setSn(Integer sn) {
        this.sn = sn;
    }

    public Integer getState() {
        return this.state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public Integer getDr() {
        return this.dr;
    }

    public void setDr(Integer dr) {
        this.dr = dr;
    }

    public Date getDr_date() {
        return this.dr_date;
    }

    public void setDr_date(Date dr_date) {
        this.dr_date = dr_date;
    }

    public String getDr_user_sid() {
        return this.dr_user_sid;
    }

    public void setDr_user_sid(String dr_user_sid) {
        this.dr_user_sid = dr_user_sid;
    }

    public String getDr_user_name() {
        return this.dr_user_name;
    }

    public void setDr_user_name(String dr_user_name) {
        this.dr_user_name = dr_user_name;
    }

    public String getNote_info() {
        return this.note_info;
    }

    public void setNote_info(String note_info) {
        this.note_info = note_info;
    }

    public Integer getYyyy() {
        return this.yyyy;
    }

    public void setYyyy(Integer yyyy) {
        this.yyyy = yyyy;
    }

    public Integer getMm() {
        return this.mm;
    }

    public void setMm(Integer mm) {
        this.mm = mm;
    }

    public Integer getDd() {
        return this.dd;
    }

    public void setDd(Integer dd) {
        this.dd = dd;
    }

    public Integer getTen_days() {
        return this.ten_days;
    }

    public void setTen_days(Integer ten_days) {
        this.ten_days = ten_days;
    }

    public String getExt0() {
        return this.ext0;
    }

    public void setExt0(String ext0) {
        this.ext0 = ext0;
    }

    public String getExt1() {
        return this.ext1;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1;
    }

    public String getExt2() {
        return this.ext2;
    }

    public void setExt2(String ext2) {
        this.ext2 = ext2;
    }

    public String getExt3() {
        return this.ext3;
    }

    public void setExt3(String ext3) {
        this.ext3 = ext3;
    }

    public String getExt4() {
        return this.ext4;
    }

    public void setExt4(String ext4) {
        this.ext4 = ext4;
    }

    public String getExt5() {
        return this.ext5;
    }

    public void setExt5(String ext5) {
        this.ext5 = ext5;
    }

    public String getExt6() {
        return this.ext6;
    }

    public void setExt6(String ext6) {
        this.ext6 = ext6;
    }

    public String getExt7() {
        return this.ext7;
    }

    public void setExt7(String ext7) {
        this.ext7 = ext7;
    }

    public String getExt8() {
        return this.ext8;
    }

    public void setExt8(String ext8) {
        this.ext8 = ext8;
    }

    public String getLogin_id() {
        return this.login_id;
    }

    public void setLogin_id(String login_id) {
        this.login_id = login_id;
    }

    public String getPassword() {
        return this.password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getMobile() {
        return this.mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getPhone() {
        return this.phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getEmail() {
        return this.email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getGroup_sid() {
        return this.group_sid;
    }

    public void setGroup_sid(String group_sid) {
        this.group_sid = group_sid;
    }

    public String getUser_type() {
        return this.user_type;
    }

    public void setUser_type(String user_type) {
        this.user_type = user_type;
    }

    public Integer getSex() {
        return this.sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    public String getId_card_no() {
        return this.id_card_no;
    }

    public void setId_card_no(String id_card_no) {
        this.id_card_no = id_card_no;
    }

    public String getMust_change_pwd() {
        return this.must_change_pwd;
    }

    public void setMust_change_pwd(String must_change_pwd) {
        this.must_change_pwd = must_change_pwd;
    }

    public Date getChanged_pwd_date() {
        return this.changed_pwd_date;
    }

    public void setChanged_pwd_date(Date changed_pwd_date) {
        this.changed_pwd_date = changed_pwd_date;
    }

    public Date getLocked_date() {
        return this.locked_date;
    }

    public void setLocked_date(Date locked_date) {
        this.locked_date = locked_date;
    }

    public Date getLast_logined_date() {
        return this.last_logined_date;
    }

    public void setLast_logined_date(Date last_logined_date) {
        this.last_logined_date = last_logined_date;
    }

    public Date getLogout_date() {
        return this.logout_date;
    }

    public void setLogout_date(Date logout_date) {
        this.logout_date = logout_date;
    }

    public Integer getLogin_count() {
        return this.login_count;
    }

    public void setLogin_count(Integer login_count) {
        this.login_count = login_count;
    }

    public String getDept_sid() {
        return this.dept_sid;
    }

    public void setDept_sid(String dept_sid) {
        this.dept_sid = dept_sid;
    }

    public String getDuty_sid() {
        return this.duty_sid;
    }

    public void setDuty_sid(String duty_sid) {
        this.duty_sid = duty_sid;
    }

    public String getHead_pic() {
        return this.head_pic;
    }

    public void setHead_pic(String head_pic) {
        this.head_pic = head_pic;
    }

    public String getSign_url() {
        return this.sign_url;
    }

    public void setSign_url(String sign_url) {
        this.sign_url = sign_url;
    }

    public String getSeal_url() {
        return this.seal_url;
    }

    public void setSeal_url(String seal_url) {
        this.seal_url = seal_url;
    }

    public String getId_card_url() {
        return this.id_card_url;
    }

    public void setId_card_url(String id_card_url) {
        this.id_card_url = id_card_url;
    }

    public String getId_card2_url() {
        return this.id_card2_url;
    }

    public void setId_card2_url(String id_card2_url) {
        this.id_card2_url = id_card2_url;
    }

    public String getProfessional_url() {
        return this.professional_url;
    }

    public void setProfessional_url(String professional_url) {
        this.professional_url = professional_url;
    }

    public String getDiploma_url() {
        return this.diploma_url;
    }

    public void setDiploma_url(String diploma_url) {
        this.diploma_url = diploma_url;
    }

    public String getQualification_url() {
        return this.qualification_url;
    }

    public void setQualification_url(String qualification_url) {
        this.qualification_url = qualification_url;
    }

    public String getReal_name() {
        return this.real_name;
    }

    public void setReal_name(String real_name) {
        this.real_name = real_name;
    }

    public String getBirth_day() {
        return this.birth_day;
    }

    public void setBirth_day(String birth_day) {
        this.birth_day = birth_day;
    }

    public String getNationality() {
        return this.nationality;
    }

    public void setNationality(String nationality) {
        this.nationality = nationality;
    }

    public String getAddress() {
        return this.address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getDevice_id() {
        return this.device_id;
    }

    public void setDevice_id(String device_id) {
        this.device_id = device_id;
    }

    public Integer getIs_all_client() {
        return this.is_all_client;
    }

    public void setIs_all_client(Integer is_all_client) {
        this.is_all_client = is_all_client;
    }

    public String getClient_auth_mode() {
        return client_auth_mode;
    }

    public void setClient_auth_mode(String client_auth_mode) {
        this.client_auth_mode = client_auth_mode;
    }

    public String getClient_auth_setting() {
        return client_auth_setting;
    }

    public void setClient_auth_setting(String client_auth_setting) {
        this.client_auth_setting = client_auth_setting;
    }
}
